package com.kurumi.query;

import java.math.BigDecimal;
import java.util.Date;

import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.kurumi.util.StringUtil;

public class MedicalRecordQualityControlQuery extends PageQuery{
		
		//病案号
		private String mrId;
	
		//出院开始时间
		@DateTimeFormat(pattern="yyyy-MM-dd")
		@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
		private Date outHospitalStartDate;
		
		//出院结束时间
		@DateTimeFormat(pattern="yyyy-MM-dd")
		@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
		private Date outHospitalEndDate;
		
		//出院科室编号
		private String outDeptCode;
		
		//质控最小得分
		private BigDecimal minScore;
		
		//质控最大得分
		private BigDecimal maxScore;
		
		//质控信息
		private String qualityControlDesc;
		
		//查询结果集
		private Object queryDatas;
		
		

		public String getMrId() {
			return StringUtil.meaningStr(mrId);
		}




		public void setMrId(String mrId) {
			this.mrId = mrId;
		}




		public Date getOutHospitalStartDate() {
			return outHospitalStartDate;
		}




		public void setOutHospitalStartDate(Date outHospitalStartDate) {
			this.outHospitalStartDate = outHospitalStartDate;
		}




		public Date getOutHospitalEndDate() {
			return outHospitalEndDate;
		}




		public void setOutHospitalEndDate(Date outHospitalEndDate) {
			this.outHospitalEndDate = outHospitalEndDate;
		}


		public String getOutDeptCode() {
			return StringUtil.meaningStr(outDeptCode);
		}




		public void setOutDeptCode(String outDeptCode) {
			this.outDeptCode = outDeptCode;
		}
		
		

		public BigDecimal getMinScore() {
			return minScore;
		}




		public void setMinScore(BigDecimal minScore) {
			this.minScore = minScore;
		}




		public BigDecimal getMaxScore() {
			return maxScore;
		}




		public void setMaxScore(BigDecimal maxScore) {
			this.maxScore = maxScore;
		}




		public String getQualityControlDesc() {
			return StringUtil.meaningStr(qualityControlDesc);
		}




		public void setQualityControlDesc(String qualityControlDesc) {
			this.qualityControlDesc = qualityControlDesc;
		}




		public Object getQueryDatas() {
			return queryDatas;
		}




		public void setQueryDatas(Object queryDatas) {
			this.queryDatas = queryDatas;
		}

		public Boolean emptyOutDeptCodeAndOutDateAndMrIdAndQualityControlDesc(){
			if((this.getOutHospitalStartDate() == null || this.getOutHospitalEndDate() == null)
					&& this.getOutDeptCode() == null && this.getMrId() == null && this.getQualityControlDesc() == null){
				return true;
			}
			return false;
		}
		


		public Boolean emptyOutDeptCodeAndOutDateAndMrId(){
			if((this.getOutHospitalStartDate() == null || this.getOutHospitalEndDate() == null)
					&& this.getOutDeptCode() == null && this.getMrId() == null){
				return true;
			}
			return false;
		}
		
}
